var express = require('express');
var router = express.Router();
var xlsx = require('node-xlsx'); // 引入 数据导入模块
var uuid = require('node-uuid'); // 引入 唯一的uuid
var Pro = require('./../sql/col/pros'); // 产品的集合
// var sql = require('./../sql'); // 引入数据库操作模块
// var sql = require('./../sql/index'); // 引入数据库操作模块
var sql = require('./../sql/index.js'); // 引入数据库操作模块

/**
 * @api {get} api/pro 获取列表的数据
 * @apiDescription 获取列表的数据，可以传递不同的参数以获取数据
 * @apiGroup pro
 * @apiParam { number } limit 每页显示个数（默认值10）
 * @apiParam { number } count 页码（默认值0
 * @apiSuccessExample { json } Success-Response:
 * {
 *  code: '200',
 *  message: '获取产品列表数据',
 *  data: []
 * }
 * @apiSampleRequest /api/pro
 * @apiVersion 1.0.0
 */
router.get('/', function(req, res, next) {
  // 不管是get还是post 获取到的参数都是字符串，需要转换
  let limit = req.query.limit * 1 || 10
  let count = req.query.count * 1 || 0

  sql.paging(Pro, {}, { _id: 0 }, limit, count).then((data) => {
    res.send({
      code: '200',
      message: '获取产品列表数据',
      len: data.length, // 告诉用户请求了多少条数据
      data: data
    });
  })
  
});

router.get('/upload', function(req, res, next) {
  // 1.获取excel的绝对地址
  let fileStr = 'D:/work-Space/project/addmin-app/shop2.xlsx';
  // let fileStr = 'C:/Users/Administrator/Desktop/vuesix/three-stage-TaoPiaoPiao/addmin-app/shop2.xlsx';
  // 2.解析这个文件 - 输出为对象
  let fileData = xlsx.parse(fileStr)
  // res.send(fileData)
  // [ {name: '', data: []}, {name: '', data: []}]
  // 3.获取对应的表格中的数据 --- 依据excel表格中的数据的顺序
  let proarr = fileData[0].data
  let arr = []
  proarr.map((item,index) => {
    if(index > 0) {//去头
      let obj = {
        proid: 'pro_' + uuid.v1(),//产品的唯一值
        type: item[0],
        proname : item[1],
        proimg : item[2],
        desc : item[3],
        price: item[4],
        rating: item[5],
        action : item[6],
        tostart : item[7],
        detail : item[8],
        flag : item[9],
      }
      arr.push(obj)
    }
  })
  console.log(arr);
  
  sql.insert(Pro, arr).then(() => {
    res.send('插入数据成功')
  })
});

module.exports = router;